home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / src / lib / tclX6.4c / dist / Config.mk < prev    next >
Encoding:
Text File  |  1992-12-17  |  12.8 KB  |  318 lines

  1. #
  2. # Config.mk --
  3. #
  4. #   Master configuration file for Extended Tcl.  This should be the only
  5. # file you have to modify to get Extended Tcl to work.
  6. #------------------------------------------------------------------------------
  7. # Copyright 1992 Karl Lehenbauer and Mark Diekhans.
  8. #
  9. # Permission to use, copy, modify, and distribute this software and its
  10. # documentation for any purpose and without fee is hereby granted, provided
  11. # that the above copyright notice appear in all copies.  Karl Lehenbauer and
  12. # Mark Diekhans make no representations about the suitability of this
  13. # software for any purpose.  It is provided "as is" without express or
  14. # implied warranty.
  15. #------------------------------------------------------------------------------
  16. # $Id: Config.mk,v 1.1 92/12/02 22:57:01 jhh Exp Locker: jhh $
  17. #------------------------------------------------------------------------------
  18. #
  19.  
  20. #==============================================================================
  21. # Configuration file specification.  Set the macro TCL_CONFIG_FILE to the 
  22. # name of the file to use in the config directory (don't include the directory
  23. # name).  If you find problems with these files or have new onces please send
  24. # them to us (tcl-project@neosoft.com).  At the end of this file is a
  25. # description of all the flags that can be set in the config file.
  26. #
  27. TCL_CONFIG_FILE=sprite
  28.  
  29. #==============================================================================
  30. #
  31. # Configuration section.  Modify this section to set some general options and
  32. # selecting a config file for a specific Unix implementation.
  33. #
  34. #==============================================================================
  35.  
  36. #------------------------------------------------------------------------------
  37. # Location of the UCB Tcl distribution relative to this directory.  TclX works
  38. # with Tcl 6.3 and Tcl 6.4.
  39. #
  40. TCL_UCB_DIR=../../tcl
  41.  
  42. #------------------------------------------------------------------------------
  43. # If you are a Tk user and would like to build a version "wish", the Tk shell,
  44. # that includes the TclX command set, define TCL_TK_SHELL=wish and the
  45. # location of your Tk directory in TCL_TK_DIR relative to this directory. If
  46. # you do not want a "wish" compiled, don't define TCL_TK_SHELL. The libraries
  47. # required to link Tk are defined in the system specific sections below.
  48. # TK_LIBRARY must be set to the same value specified in the compile of the Tk
  49. # source.  If TCL_TK_SHELL is define, Tk manual pages will be installed by the
  50. # install script.
  51. #
  52. TCL_TK_SHELL=wishX
  53. TCL_TK_DIR=../../tk2.3/$(MACHINE).md
  54. TCL_TK_DIR_TCL=../../tk2.3/$MACHINE.md
  55. TK_LIBRARY=/sprite/lib/tcl
  56.  
  57. #------------------------------------------------------------------------------
  58. # Compiler debug/optimization/profiling flag to use.  Not that if debugging or
  59. # profiling is enabled, the DO_STRIPPING option below must be disabled.
  60. #
  61. OPTIMIZE_FLAG=-O
  62.  
  63. #------------------------------------------------------------------------------
  64. # Stripping of the final tclshell binary.  Specify `true' if the binary is to
  65. # be stripped (optimized case) or specify `false' if the binary is not to be
  66. # stripped (debugging case).
  67. #
  68. #DO_STRIPPING=false
  69. DO_STRIPPING=true
  70.  
  71. #------------------------------------------------------------------------------
  72. # Definition of the compiler you want to use, as well as extra flags for the
  73. # compiler and linker.  Also the yacc program you wish to use.
  74. #
  75. CC=cc
  76. AR=ar
  77. XCFLAGS=
  78. XLDFLAGS=
  79. YACC=yacc
  80. #YACC=bison -b y
  81.  
  82. #------------------------------------------------------------------------------
  83. # If C++ is to be used these should be used.  Specifying CPLUSOBJS includes the
  84. # C++ support code in the Tcl library. CCPLUS is the command to run your C++
  85. # compiler. CPLUSINCL is the location of your standard C++  include files.
  86. #
  87. #CPLUSOBJS=tcl++.o
  88. CCPLUS=CC
  89. CPLUSINCL=/usr/include/CC
  90.  
  91. #------------------------------------------------------------------------------
  92. # Enable or disable Tcl history in the Tcl flag.  If this macro is set to
  93. # '-DTCL_NOHISTORY', the `history' command will not be available in the Tcl
  94. # shell.  Many people do not find the history command useful and its rather
  95. # large, so this way it can be excluded from the standard shell.  It will
  96. # still be in the library and will be available in other applications if they
  97. # use `Tcl_RecordAndEval'.
  98. #
  99. HISTORY_FLAG=
  100.  
  101. #------------------------------------------------------------------------------
  102. # Memory debugging defines.  These are only of interest if you are adding C
  103. # code to Tcl or debugging Tcl C code. You probably don't need this unless it
  104. # seems like you have memory problems. They help find memory overwrites and
  105. # leaks.  One or more of the following flags may be specified (in the form
  106. # -DFLAGNAME).
  107. #
  108. #    o TCL_MEM_DEBUG - Turn on memory debugging. 
  109. #    o TCL_SHELL_MEM_LEAK - Dump a list of active memory blocks when the
  110. #      shell exits an eof (requires TCL_MEM_DEBUG).
  111. #
  112. # NOTE: If TCL_MEM_DEBUG is enabled, the Berkeley Tcl distribution must be 
  113. # recompiled with this option as well, or it will not link or may fail
  114. # with some mysterious memory problems.  Same goes for Tk if you are using
  115. # Tk.  If this option is to be used, all code being tested MUST be compiled
  116. # with TCL_MEM_DEBUG and use ckalloc and ckfree for all memory passed between
  117. # the application and Tcl.
  118. #
  119. # An addition a flag MEM_VALIDATE may be specified in the Berkeley Tcl
  120. # compilation to do validation of all memory blocks on each allocation or
  121. # deallocation (very slow).
  122. #
  123. MEM_DEBUG_FLAGS=
  124.  
  125. #==============================================================================
  126. # Install options sections.  This sections describes the installation options.
  127. # Your might want to change some of these values before installing.
  128. #..............................................................................
  129. #
  130. # o TCL_OWNER - The user that will own all Tcl files after installation.
  131. # o TCL_GROUP - The group that all Tcl files will belong to after installation.
  132. #
  133. TCL_OWNER=jhh
  134. TCL_GROUP=sprite
  135.  
  136. # o TCL_DEFAULT - Base name of Tcl default file.  This name will have a
  137. #   version number appended.
  138. #
  139. #TCL_DEFAULT=/etc/default/tcl
  140. TCL_DEFAULT=/sprite/lib/tcl/tclX
  141.  
  142. #
  143. # The directory to install Tcl binary into.
  144. #
  145. TCL_BINDIR=/sprite/cmds
  146. TCL_SHELL=tclX
  147. #
  148. # The directory tcl.a library goes into.
  149. #
  150. TCL_LIBDIR=/sprite/lib/$MACHINE.md
  151.  
  152. #
  153. # The directory the Tcl .h files go into.
  154. #
  155. TCL_INCLUDEDIR=/sprite/lib/include
  156.  
  157. #
  158. # The directory .tcl files and the .tlib library goes into.
  159. #
  160. TCL_TCLDIR=/sprite/lib/tclX-6.4
  161.  
  162. #==============================================================================
  163. # These defines specify where and how the manual pages are to be installed.
  164. # They are actually defined in the system specific configuration file in the
  165. # config directory.  Install manual pages is somewhat problematic, so a global
  166. # option not to install manual pages is provided. Since there are so many
  167. # manual pages provided, they are placed together in one Tcl manual page
  168. # directory, rather than splitting into the standard manual pages directories.
  169. # The actual definitions of these variables are set for in the system
  170. # dependent file.  You might want to modify these values.
  171. #..............................................................................
  172.  
  173. #
  174. # Set to 1 to install manual files, to 0 to not install manual files.
  175. #
  176.  
  177. TCL_MAN_INSTALL=0
  178.  
  179. #
  180. # o TCL_MAN_BASEDIR - Base manual directory where all of the man.* and cat.*
  181. #   directories live.
  182. #
  183. TCL_MAN_BASEDIR=/sprite/man
  184.  
  185. #
  186. # o TCL_MAN_CMD_SECTION - Section for Tcl command  manual pages. Normal `1' or
  187. #   `C'.  You might perfer TCL since there are some many.
  188. #
  189. # o TCL_MAN_FUNC_SECTION - Section for Tcl C level function manual pages.
  190. #   In some cases it might be desirable install all manual pages in one
  191. #   section, in this case, the value should be the same as TCL_MAN_CMD_SECTION.
  192. #
  193. #TCL_MAN_CMD_SECTION=TCL
  194. #TCL_MAN_FUNC_SECTION=TCL
  195. TCL_MAN_CMD_SECTION=lib/tclX
  196. TCL_MAN_FUNC_SECTION=lib/tclX
  197.  
  198. #
  199. # o TK_MAN_CMD_SECTION - Section for Tk command  manual pages. Normal `1' or
  200. #   `C'.  You might perfer TK since there are some many.
  201. #
  202. # o TK_MAN_FUNC_SECTION - Section for Tk C level function manual pages.
  203. #   In some cases it might be desirable install all manual pages in one
  204. #   section, in this case, the value should be the same as TK_MAN_CMD_SECTION.
  205. #
  206. #TK_MAN_CMD_SECTION=TK
  207. #TK_MAN_FUNC_SECTION=TK
  208. TK_MAN_CMD_SECTION=lib/tk
  209. TK_MAN_FUNC_SECTION=lib/tk
  210.  
  211.  
  212. #..............................................................................
  213. # The rest of the manual page install options are set in the system dependent
  214. # configuration file (config/*)
  215. #
  216.  
  217. # o TCL_MAN_SEPARATOR - The separator character used in the directory name
  218. #   of the cat* and man* manual directories.  This is usually empty or 
  219. #   a period.
  220. #
  221. # o TCL_MAN_STYLE - The style of manual management the system has.It is
  222. #   a string with one of the following values:
  223. #      o SHORT - Short file name installation (an index can be generated).
  224. #      o LONG - Long file name installation, a link will be made for each
  225. #        name the manual page is to be available under.
  226. #   This flag is optional, if omitted LONG is assumed.
  227. #
  228. # o TCL_MAN_INDEX - If 1, then a manual page index will be build in the manual
  229. #   base directory named index.TCL. Not useful if TCL_MAN_STYLE is LONG. Each
  230. #   line in the file has the form:
  231. #       mansubject manfile section
  232. #   This flag is optional, if omitted 0 is assumed.
  233. #
  234.  
  235. #==============================================================================
  236. # System specific configuration.  A system configuration file in the config
  237. # directory defines the following mactos required for your version of Unix.
  238. # In addition to the options defined in the Berkeley source the following
  239. # options can be defined here.  This information will help you build your own
  240. # system configuration if one is not supplied here.  The configuration file
  241. # name is specified an the end of this section.
  242. #
  243. #    o SYS_DEP_FLAGS - The system dependency flags.  The following options are
  244. #      available, these should be defined using -Dflag.
  245. #
  246. #      o TCL_HAVE_SETLINEBUF - Define if the `setlinebuf' is available as part
  247. #        of stdio.
  248. #
  249. #      o TCL_32_BIT_RANDOM - Define if the `rand' function returns a value in
  250. #        the range 0..(2^31)-1, leave undefined if `rand' returns a value
  251. #        in the range 0..(2^15)-1.
  252. #
  253. #      o TCL_NO_SELECT - The select call is not available.
  254. #
  255. #      o TCL_NEED_SYS_SELECT_H - Define if <sys/select.h> is required. May not
  256. #        need it, even if it is there.
  257. #
  258. #      o TCL_USE_BZERO_MACRO - Use a macro to define bzero for the select
  259. #        FD_ZERO macro.
  260. #
  261. #      o TCL_POSIX_SIG - Set if posix signals are available (sigaction, etc).
  262. #
  263. #      o TCL_HAVE_CATGETS - Set if XPG/3 message catalogs are available
  264. #        (catopen, catgets, etc).
  265. #
  266. #      o TCL_TM_GMTOFF - Set if the seconds east of GMT field in struct tm is
  267. #        names 'tm_gmtoff'.  Not set if its is names 'tm_tzadj'.
  268. #
  269. #      o TCL_TIMEZONE_VAR - If the timezone varaible is used in place of 
  270. #        one of the fields from struct tm.
  271. #
  272. #      o TCL_NEED_TIME_H - Set if time.h is required.
  273. #
  274. #      o TCL_SIG_PROC_INT - Set if signal functions return int rather than
  275. #        void.
  276. #
  277. #      o TCL_NO_ITIMER - Set if setitimer is not available.
  278. #
  279. #      o TCL_IEEE_FP_MATH - Set if IEEE 745-1985 error reporting via the value
  280. #        a function returns is to be used instead of the standard matherr
  281. #        mechanism.
  282. #
  283. #      o TCL_NO_FILE_LOCKING - Set if the fcntl system call does not support
  284. #        file locking.
  285. #
  286. #      o TCL_DUP_CLK_TCK - On some systems that have both time.h and
  287. #        sys/time.h, tclUnix.h defines CLK_TCK then tclExtdInt.h includes
  288. #        time.h and you get a redefiniton warning.  Set this flag to prevent
  289. #        the warning (its not safe to just unset it).
  290. #
  291. #    o LIBS - The flags to specify when linking the tclshell.
  292. #
  293. #    o TCL_TK_LIBS - The libraries to link the TK wish program.  This should
  294. #      also include libraries specified for LIBS, as both values may not be
  295. #      used together due to library ordering constraints.
  296. #
  297. #    o RANLIB_CMD - Either `ranlib' if ranlib is required or `true' if ranlib
  298. #      should not be used.
  299. #
  300. #    o MCS_CMD - Command to delete comments from the object file comment
  301. #      section, if available.  The command `true' if it's not available.  This
  302. #      makes the object file even smaller after its stipped.
  303. #
  304. #    o SUPPORT_FLAGS - The flags for SUPPORT_OBJS code.  The following options
  305. #      are available, these should be defined using -Dflag.
  306. #
  307. #      o TCL_HAS_TM_ZONE - If if 'struct tm' has the 'tm_zone' field.   Used
  308. #        by strftime.
  309. #
  310. #    o SUPPORT_OBJS - The object files to compile to implement library 
  311. #      functions that are not available on this particular version of Unix or 
  312. #      do not function correctly.  The following are available:
  313. #         o strftime.o
  314. #
  315. #..............................................................................
  316.  
  317.